package com.example.crmweb.util;

import lombok.Data;

import java.io.Serializable;

/**
 * @author Pepsi
 * 将数据封装到一个  结果集实体类  方便前后端分离操作数据
 */
@Data
public class Result implements Serializable {
    private int code; // 状态码 200：成功  400：失败
    private String msg; //信息
    private Object data;// 返回的数据

    /**
     * 几个静态方法代表在  不同时期需要的业务
     */
    public static Result success(Object data){
        return success(200,"操作成功",data);
    }
    public static Result success(int code, String msg, Object data){
        Result vo=new Result();
        vo.setCode(code);
        vo.setMsg(msg);
        vo.setData(data);
        return vo;
    }


    public static Result fail(String msg){
        return fail(400,"操作失败",null);
    }
    public static Result fail(String msg, Object data) {
        return fail(400, msg, data);
    }
    public static Result fail(int code, String msg, Object data){
        Result vo=new Result();
        vo.setData(data);
        vo.setCode(code);
        vo.setMsg(msg);
        return vo;
    }
}
